#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define N   500

char characters[] =
{
    'A', 'B', 'C', 'D', 'E', 'F',
    'G', 'H', 'I', 'J', 'K', 'L',
    'M', 'N', 'O', 'P', 'Q', 'R',
    'S', 'T', 'U', 'V', 'W', 'X',
    'Y', 'Z'
};

char src[N];
char dest[N];

char upperch(char ch)
{
    if(ch >= 'a' && ch <= 'z')
    {
        return ch - 'a' + 'A';
    }
    else if(ch >= 'A' && ch <= 'Z')
    {
        return ch;
    }
    else
    {
        return ch;
    }
}

char getcipherch(char ch)
{
    char c = upperch(ch);
    int index = -1;

    if(c >= 'A' && c <= 'Z')
    {
        index = c - 'A';
        index = (index - 5 + 26) % 26;
        return index + 'A';
    }
    else
    {
        return c;
    }
}

void decipher()
{
    int i = 0;

    for(i = 0; i < strlen(src); i++)
    {
        dest[i] = getcipherch(src[i]);
    }
    dest[i] = '\0';
}

void process()
{
    char startstr[200] = "", endstr[200] = "";

    while(1)
    {
        gets(startstr);
        if(strcmp(startstr, "ENDOFINPUT") == 0)
        {
            break;
        }
        gets(src);
        gets(endstr);

        decipher();

        printf("%s\n", dest);
    }
}

int main()
{
    //freopen("bin\\debug\\in.txt", "r", stdin);

    process();

    return 0;
}
